package com.sqlcheck.dto.git;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 通用Git仓库信息
 * 适用于所有Git平台（GitLab、Gitee、GitHub等）
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class GitRepositoryInfo {
    
    /**
     * 仓库ID（平台特定）
     */
    private Long id;
    
    /**
     * 仓库名称
     */
    private String name;
    
    /**
     * 仓库路径
     */
    private String path;
    
    /**
     * 仓库完整路径
     */
    private String fullPath;
    
    /**
     * 仓库描述
     */
    private String description;
    
    /**
     * 仓库Web访问URL
     */
    private String webUrl;
    
    /**
     * 仓库克隆URL
     */
    private String cloneUrl;
    
    /**
     * 默认分支
     */
    private String defaultBranch;
    
    /**
     * 可见性级别
     */
    private String visibility;
    
    /**
     * 是否已归档
     */
    private boolean archived;
    
    /**
     * 是否为空仓库
     */
    private boolean emptyRepo;
    
    /**
     * 最后活动时间
     */
    private String lastActivityAt;
    
    /**
     * 创建时间
     */
    private String createdAt;
    
    /**
     * 最后提交ID
     */
    private String lastCommitId;
    
    /**
     * 最后提交消息
     */
    private String lastCommitMessage;
    
    /**
     * 最后提交作者
     */
    private String lastCommitAuthor;
    
    /**
     * 最后提交时间
     */
    private String lastCommitDate;
}